Set top box automation

ABSTRACT

A computer-implemented method for integration of a set top box and an automation system is described. In one configuration, subscriber program content is provided. An aspect of a premises is monitored via one or more sensors. A monitor channel may be provided to display the monitored aspect of the premises. The monitor channel may be displayed in a channel guide among channels of the subscriber program content.

CROSS-REFERENCE TO RELATED APPLICATIONS

The present Application claims priority to U.S. Provisional PatentApplication No. 61/834,409, titled: “Systems and Methods for Set Top BoxHome Automation,” filed on Jun. 12, 2013, and assigned to the assigneehereof.

BACKGROUND

Advancements in media delivery systems and media-related technologiescontinue to increase at a rapid pace. Increasing demand for media hasinfluenced the advances made to media-related technologies. Computersystems have increasingly become an integral part of the media-relatedtechnologies. Computer systems may be used to carry out severalmedia-related functions. The widespread access to media has beenaccelerated by the increased use of computer networks, including theInternet and cloud networking.

Many businesses use one or more computer networks to deliver mediabetween the various computers connected to the networks. Users ofcomputer technologies continue to demand increased access to media andan increase in the efficiency of these technologies. Improving theefficiency of computer technologies is always desirable to anyone whouses and relies on computers.

With the wide-spread use of computers and mobile devices has come anincreased presence of automation and home security products.Advancements in automation allow users to control aspects of their homeusing mobile computing devices. However, current implementations ofautomation may involve multiple devices in a piecemeal fashion.

SUMMARY

According to at least one embodiment, a computer-implemented method forintegration of a set top box and an automation system is described. Inone configuration, subscriber program content may be provided. An aspectof the premises may be monitored via one or more sensors. A monitorchannel may be provided to display the monitored aspect of the premises.The monitor channel may be displayed in a channel guide among channelsof the subscriber program content.

In some embodiments, the method may include tracking a plurality ofentities associated with the premises and providing a tracking channelamong channels of the subscriber program content. The tracking channelmay display a map of the tracked plurality of entities. In some cases,the method may include modifying a native application programminginterface (API) of the set top box in order to provide the monitorchannel in the channel guide among the channels of the subscriberprogram content. Upon receiving a user command, the set top box may beconfigured to record the monitor channel for a specified duration on aspecified date.

In one embodiment, a predetermined change related to the one or moresensors may be detected. A notification may be displayed on a displayconnected to the set top box. A user input may be received in reply tothe displaying of the notification. The notification may be displayed inrelation to a presently viewed channel of the subscriber programcontent. In some embodiments, the method includes pausing a channel fromthe subscriber program content and displaying the notification on atleast a portion of the paused channel.

In one embodiment, upon detecting a first user input, an automation userinterface may be displayed. The automation user interface may includeinformation regarding the one or more sensors. Upon detecting a seconduser input in relation to the automation user interface, an aspect of atleast one of the one or more sensors may be adjusted. In someembodiments, the first and second user inputs may include a voicecommand input, a video gesture input (e.g., a predetermined pattern ofmovement made by the user and detected by a camera), tactile gestureinput (e.g., a predetermined pattern of movement made by the user on atouch pad), a mobile computing device input, a remote control deviceinput, and the like.

In one example, subscriber program content may be provided. An action ofa user may be monitored. Upon determining the monitored action of theuser matches a predetermined user action, an aspect of at least one ofthe one or more sensors may be adjusted based on a current state of theone or more sensors. In one embodiment, the method includes detectingthe action of the user via a camera connected to the set top box. Insome cases the method includes identifying a pattern associated with themonitored action of the user, detecting an initiation of the identifiedpattern associated with the monitored action of the user, and/or upondetecting the initiation of the identified pattern, adjusting an aspectof the one or more sensors.

A computing device configured to integrate a set top box and anautomation system is also described. The device may include a processorand memory in electronic communication with the processor. The memorymay store instructions that may be executable by the processor toprovide subscriber program content, monitor an aspect of a premisesusing one or more sensors, and provide a monitor channel to display themonitored aspect of the premises, the monitor channel being displayed ina channel guide among channels of the subscriber program content.

A computer-program product to integrate a set top box and an automationsystem is also described. The computer-program product may include anontransitory computer-readable medium that stores instructions. Theinstructions may be executable by the processor to provide subscriberprogram content, monitor an aspect of a premises using one or moresensors, and provide a monitor channel to display the monitored aspectof the premises, the monitor channel being displayed in a channel guideamong channels of the subscriber program content.

Features from any of the above-mentioned embodiments may be used incombination with one another in accordance with the general principlesdescribed herein. These and other embodiments, features, and advantageswill be more fully understood upon reading the following detaileddescription in conjunction with the accompanying drawings and claims.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings illustrate a number of exemplary embodimentsand are a part of the specification. Together with the followingdescription, these drawings demonstrate and explain various principlesof the instant disclosure.

FIG. 1 is a block diagram illustrating one embodiment of an environmentin which the present systems and methods may be implemented;

FIG. 2 is a block diagram illustrating one example of an automationmodule;

FIG. 3 is a flow diagram illustrating one embodiment of a method forproviding a bidirectional notification via a media set top box;

FIG. 4 is a flow diagram illustrating one embodiment of a method forreceiving a user input to control automation via a media set top box;

FIG. 5 is a flow diagram illustrating one embodiment of a method forautomatically adjusting, via a media set top box, an aspect of anautomation system based on a detected action of a user;

FIG. 6 is a flow diagram illustrating one embodiment of a method forproviding an automation channel in a channel guide of a media set topbox; and

FIG. 7 depicts a block diagram of a computer system suitable forimplementing the present systems and methods.

While the embodiments described herein are susceptible to variousmodifications and alternative forms, specific embodiments have beenshown by way of example in the drawings and will be described in detailherein. However, the exemplary embodiments described herein are notintended to be limited to the particular forms disclosed. Rather, theinstant disclosure covers all modifications, equivalents, andalternatives falling within the scope of the appended claims.

DETAILED DESCRIPTION OF EXEMPLARY EMBODIMENTS

The systems and methods described herein relate to automation. Morespecifically, the systems and methods described herein relate tointegrating automation in a subscriber-based media content set top box,such as a satellite and/or cable digital video recorder (DVR).Currently, when a user is viewing programming delivered from asubscription content provider and wants to check a video camera feed oranother automation input, the user typically exits the set top box andswitches to a separate video input to view the automation input. Thesystems and methods described herein, however, allow a user to view avideo camera feed from the subscriber-based media content set top box.

FIG. 1 is a block diagram illustrating one embodiment of an environment100 in which the present systems and methods may be implemented. In someembodiments, the systems and methods described herein may be performedon a device (e.g., device 105). The environment 100 may include a device105, service provider 110, a sensor 125, a display 130, a mobilecomputing device 155, a automation controller 160, and a network 115that allows the device 105, the service provider 110, the mobilecomputing device 155, automation controller 160, and sensor 125 tocommunicate. Examples of the device 105 include media content set topbox, satellite set top box, cable set top box, DVRs, personal videorecorders (PVRs), mobile devices, smart phones, personal computingdevices, computers, servers, etc. Examples of the automation controller160 include a dedicated automation computing device (e.g., wallmountedcontroller), a personal computing device (e.g., laptop, desktop, etc.),a mobile computing device (e.g., tablet computing device, smartphone,etc.), and the like. Examples of the sensor 125 include a camera,three-dimensional (3-D) sensor, motion sensor, smoke sensor, glass breaksensor, door sensor, window sensor, carbon monoxide sensor, and thelike. Sensor 125 may also be integrated with a facial recognitionsystem. Although sensor 125 is depicted as connecting to device 105 overnetwork 115, in some embodiments, sensor 125 may connect directly todevice 105.

In some configurations, the device 105 may include a user interface 135,application 140, and automation module 145. Although the components ofthe device 105 are depicted as being internal to the device 105 it isunderstood that one or more of the components may be external to thedevice 105 and connect to device 105 through wired and/or wirelessconnections. In some embodiments, application 140 may be located onmobile computing device 155 in order to allow a user to interface with afunction of device 105 and/or automation module 145.

In some embodiments, device 105 may communicate with service provider110 via network 115. Example of networks 115 include cloud networks,local area networks (LAN), wide area networks (WAN), virtual privatenetworks (VPN), wireless networks (using 802.11, for example), cellularnetworks (using 3G and/or LTE, for example), etc. In someconfigurations, the network 115 may include the internet. It is notedthat in some embodiments, the device 105 may not include an automationmodule 145. For example, the device 105 may include the application 140that allows the device 105 to interface with the automation controller160 via the automation module 145 located on service provider 110. Insome embodiments, the device 105, the automation controller 160, and theservice provider 110 may include an automation module 145 where at leasta portion of the functions of the automation module 145 are performedseparately and/or concurrently on the device 105, automation controller160, and/or the service provider 110. Likewise, in some embodiments, auser may access the functions of device 105 and/or automation controller160 (directly or through device 105 via automation module 145) frommobile computing device 155. For example, in some embodiments, mobilecomputing device 155 includes a mobile application that interfaces withone or more functions of device 105, automation controller 160,automation module 145, and/or service provider 110.

In some embodiments, the service provider 110 may be coupled to database120. For example, device 105 may access program content 150 in database120 over the network 115 via service provider 110. Database 120 may beinternal or external to the service provider 110. In one example, thedevice 105 may be coupled to database 120 via network 115.

Automation module 145 may allow a user to control (either directly orvia automation controller 160), from a subscription-content media settop box, an aspect of the premises, including security, locking orunlocking a door, checking the status of a door, locating a person oritem, controlling lighting, thermostat, cameras, and the like. In someconfigurations, application 140 may enable device 105 to interface withautomation controller 160 via automation module 145 to provideautomation content to device 105 and/or mobile computing device 155.Thus, application 140, via the automation module 145, may allow users tocontrol aspects of their home. Further details regarding the automationmodule 145 are discussed below.

FIG. 2 is a block diagram illustrating one example of an automationmodule 145-a. The automation module 145-a may be one example of theautomation module 145 depicted in FIG. 1. As depicted, the automationmodule 145-a may include a monitoring module 205, a notification module210, a pattern detection module 215, a user identification module 220,an entity control module 225, and a media module 230.

In some embodiments, service provider 110 may provide subscriber programcontent (cable/satellite television programming, for example) to a uservia a set top box located in a home, office, etc. of the user. Examplesof set top boxes include cable set top boxes, satellite set top boxes,DVRs, personal video recorders (PVRs), and the like. Monitoring module205 may be configured to monitor an entity, such as a security camera, adoor lock, a door status, a smoke alarm (or other type of sensor), ahome appliance, utility equipment, energy/utility usage, and the like.Home appliances may include a refrigerator, oven, microwave oven, stove,dishwasher, washer, dryer, and the like. Utility equipment may include agarage door opening system, heating ventilation air conditioning (HVAC)equipment, culinary water equipment (water heater, water softener, watermeter, fire alarm, in-home sprinkler system, etc.), telephony equipment,irrigation water equipment (lawn sprinkler system, etc.), natural gassystem (carbon monoxide sensor, gas meter, gas detection system, etc.),and the like. Monitoring module 205 may be configured to detect apredetermined change related to the entity or the triggering of apredetermined threshold related to the entity (carbon monoxide levelsexceed a certain level, for example).

In one embodiment, notification module 210, in conjunction with the userinterface 135, may display a notification on a display connected to theset top box. Notification module 210 may display the notification inrelation to a presently viewed channel of the subscriber programcontent. In some cases, notification module 210 may display thenotification in at least a portion of a viewing area of the channel. Forexample, a user watching content from a satellite DVR on a televisionmay receive a notification displayed on at least a portion of the screenof the television. In some embodiments, entity control module 225, inconjunction with user interface 135, may receive a user input inresponse to the notification. For example, a notification relating to anoven (e.g., an oven timer), a washer/dryer cycle, a dishwasher washcycle, water softener operation (e.g., time for a refill of the watersoftener), furnace operation (e.g., time to replace a furnace airfilter), water heater, air conditioner, refrigerator, microwave oven,current energy use, energy use patterns, water use, and the like, may bedisplayed in conjunction with the content provided by a subscriber settop box. In one example, a user may set a timer for a meal cooking in anoven. With one minute left on the timer, the notification module 210 maydisplay a notification on a channel presently being viewed by the user.When the notification is displayed, the content currently being viewedby the user on the channel may be paused. When a response to thenotification is received or after a predetermined amount of time haslapsed, the content may resume.

In some embodiments, notification 210 may adapt a notification based oncertain conditions. Notification module 210 may determine whether todisplay a notification on a display based on notification rulesassociated with a current state of device 105. For example, notification210 may determine whether to display the notification based on thecontent provided by a set top box that a user is currently viewing. Forinstance, if a user is watching a particular sports event (e.g., WORLDSERIES®, SUPERBOWL®, etc.) notification 210 may block the notificationfrom being displayed. In some cases, notification module 210 may alterthe notification based on the current state of the device 105. For onetype of programming and set top box content, notification module 210 mayshow scrolling text across an edge of the television screen. For anothertype of programming, notification module 210 may play a sound (e.g., atone, a combination of tones, a recorded voice notification, a text tospeech notification, and the like) based on the type of notification. Insome embodiments, notification module 210 may alter the destination ofthe notification based on the type of notification and/or the type ofprogramming currently being viewed by the user. For example, if thenotification rules require minimum notification for a certain type ofprogramming, the notification module 210 may display in alternativemodes of communication. For instance, notification module 210 may emailor text message a notification to a user based on the type ofnotification, the type of programming the user is currently watching,whether programming is currently being watched, and/or the currentlocation of the user, etc.

In some cases, notification 210 may determine whether to display anotification in relation to programming currently being watched by theuser and how to handle the programming based on the type of notificationand/or the type of programming. For example, automation module 145-a maypause the programming for one type of notification, show a pop upmessage for another type of notification without pausing theprogramming, split the screen between a window for a security cameraview and a window for the programming for another type of notification,and so forth. Additionally, or alternatively, notification module 210may pause the programming for one type of notification based on one typeof programming, block the notification for the same type of notificationbased on another type of programming, and continue showing theprogramming for the same type of notification based on a third type ofprogramming.

The user may reply to the timer notification by dismissing thenotification. Additionally, or alternatively, the user may respond bychanging the time left on the timer. For example, the user may addadditional time (e.g., 30 seconds) when the timer expires. In someembodiments, the notification module 210 may provide two or more optionsfor the user to select (e.g., dismiss the notification, add 30 secondsto the timer, add 60 seconds to the timer, and the like), receive aselection from the user, and update the timer accordingly. In someembodiments, the automation module 145 may interact with one or moresensors associated with the oven, such as an oven camera, an oventemperature probe, etc. The notification module 210, may include thecurrent state of the one or more sensors associated with the oven in thetimer notification. Upon receiving a notification that the remainingtime on the timer has expired, in some embodiments, the notificationmodule 210 may notify the user that the timer has expired.

In some embodiments, as mentioned above, upon detecting a predeterminedchange related to the entity, media module 230 may pause subscriberprogram content currently provided on a channel. For example, theautomation module 145-a may pause and/or record a portion of the contentthe user was viewing when the notification is displayed. In some cases,the notification may include a picture in picture notification, a textbar, scrolling text, a pop up, or drop down notification message. Insome cases, the presently viewed channel may be paused upon thenotification module 210 displaying the notification.

In one embodiment, the monitoring module 205 may monitor an entityassociated with a home of a user in relation to content provided by asubscriber set top box. In one example, upon detecting a first userinput, automation module 145-a, in conjunction with the execution ofapplication 140, may be configured to display an automation userinterface (e.g., user interface 135). The automation user interface mayinclude access to information regarding the one or more sensors. Upondetecting a second user input in relation to the automation userinterface, entity control module 225 may adjust an aspect of at leastone of the one or more sensors.

User inputs comprise at least one of a voice command input, a videogesture input, tactile gesture input, a mobile computing device input,and a remote control device input. In some embodiments, automationmodule 145-a, in conjunction with the application 140 and user interface135, may remotely interface with the automation user interface via amobile application executing on a mobile computing device. For example,a user may press a menu button on a remote control configured to controla satellite DVR. A menu may appear that include access to automationfunctions, which may be provided as an automation application (e.g.,application 140) executable from and within the satellite DVR. Uponselecting the automation function, the user may view, modify, or set afunction related to automation.

In one embodiment, media module 230 may provide subscriber programcontent via a set top box. Monitoring module 205 may monitor both anentity associated with the premises and an action of the user. Thus,automation module 145-a may be configured to correlate a current stateof an entity with a detected action of the user. Upon detecting that themonitored action of the user matches a predetermined user action, entitycontrol module 225 may be configured to adjust an aspect of at least oneof the one or more sensors based on the current state of the one or moresensors. In some embodiments, monitoring module 205, in conjunction withcamera 125, may detect the action of the user via a camera connected tothe set top box (e.g., camera 125). For example, monitoring module 205may perform facial recognition and other recognition algorithms todetect and recognize an identity of a user. In some embodiments, asatellite DVR may filter available content based on user recognition.For example, a user may allow a child of a certain age to watch onlycertain programming appropriate to the child's age. Upon recognizingthat the child is operating the satellite DVR, the automation module 145may limit the content provided by the satellite DVR to the child to onlyage-appropriate content. In some embodiments, automation controller 160may monitor a current state of device 105 (e.g., a satellite DVR is on,off, presently switched off, the time at which it is turned on or off,program is currently being watched, etc.). Based on the present state ofthe satellite DVR, automation controller 160 may execute one or moreautomation commands automatically. For example, automation controller160 may detect that a user switches off the satellite DVR at or after acertain time (e.g., at or after 11:00 P.M.). In response, automationcontroller 160 may lock a door or window that it detects is currentlyunlocked, warn the user of a door or window currently open, turn on oroff one or more certain lights in or outside the home, adjust atemperature on a thermostat, and the like.

In some embodiments, pattern detection module 215 may be configured toidentify a pattern associated with the monitored action of the user. Insome embodiments, pattern detection module 215 may detect an initiationof the identified pattern associated with the monitored action of theuser. Upon detecting the initiation of the identified pattern, entitycontrol module 225 may adjust an aspect of at least one of the one ormore sensors. For example, pattern detection module 215 may detect thata certain user dims the lights to a certain level, watches a certainprogram at certain times each week, and routinely turns off thedishwasher when it is running during the certain times. Upon recognizingthe pattern, automation module 145 may automatically turn on thetelevision, tune a satellite and/or cable set top box to a particularchannel, dim the lights to a predetermined level, and pause thedishwasher cycle, if it is currently running. Upon detecting the endperiod of the satellite content, automation module 145-a may resume thedishwasher cycle.

In one embodiment, media module 230 may provide subscriber programcontent via a set top box located in a premises. Monitoring module 205may monitor an aspect of the premises. Media module 230, in conjunctionwith the user interface 135, may provide a monitor channel to displaythe monitored aspect of the home to the user. The monitor channel may bedisplayed in a channel guide among channels of the subscriber programcontent. For example, a subscription to cable or satellite media contentmay include a channel guide that includes a list of selectable channelsand their respective content. Among the list of channels provided bysubscription, automation module 145-a may append one or more automationchannels that are selectable and interact with user commands in asimilar manner as the subscription channels in the channel guide.

In one embodiment, entity control module 225 may track a plurality ofentities associated with a premises. Tracked entities may includepersons, pets, objects, etc., allowing the media set top box to track aperson, a pet, and/or an item (e.g., set of keys, a mobile computingdevice, a remote control, and the like) using one or more technologiesrelated to global positioning satellite (GPS) system, radio frequencyidentification (RFID), wireless (e.g., 802.11, etc.), near-fieldcommunications (NFC), and the like. Media module 230 may provide atracking channel, similar to the monitor channel described above, todisplay a map of the tracked plurality of entities among channels of thesubscriber program content. In some embodiments, automation module 145-amay provide an automation preview channel. The automation previewchannel may provide a real-time preview of two or more automationchannels. Media module 230 may access a native application programminginterface (API) of the set top box in order to provide the monitoring,tracking, and other automation channels in the channel guide among thechannels of the subscriber program content. In some embodiments, mediamodule 230 may modify an aspect of the set top box API in order toprovide the automation channels in the channel guide among thesubscription channels. Upon receiving a user command, media module 230,in conjunction with the user interface 135, may schedule the set top boxto record the monitor channel, tracking channel, or other automationchannels for a specified duration on a specified date. In someembodiments, a recording of an automation channel may be event-driven,such as recording an automation channel upon detecting motion at asecurity camera communicatively connected to the set top box. In someembodiments, upon detecting motion at a front door camera, automationmodule 145-a may pause the content a user is currently viewing from themedia set top box and switch to a channel on the set top box dedicatedto displaying the content of the front door camera. In some embodiments,automation module 145-a may split the screen to show the current contentprovided by a media provider and the front door camera channel.Alternatively, automation module 145-a may display the front door camerain a picture in picture element over the current channel.

FIG. 3 is a flow diagram illustrating one embodiment of a method 300 forproviding an automation channel in a channel guide of a media set topbox. In some configurations, the method 300 may be implemented by theautomation module 145 illustrated in FIG. 1 or 2. In someconfigurations, the method 300 may be implemented in conjunction withthe application 140 and/or the user interface 135 illustrated in FIG. 1.

At box 305, subscriber program content may be provided to a user. At box310, an aspect of a premises may be monitored via one or more sensors(e.g., automation and/or security sensors). At block 315, a monitorchannel may be provided to display the monitored aspect of the premises.The monitor channel may be displayed in a channel guide among channelsof the subscriber program content.

FIG. 4 is a flow diagram illustrating one embodiment of a method 400 forproviding a bi-directional notification via a media set top box. In someconfigurations, the method 400 may be implemented by the automationmodule 145 illustrated in FIG. 1 or 2. In some configurations, themethod 400 may be implemented in conjunction with the application 140and/or the user interface 135 illustrated in FIG. 1.

At step 405, subscriber program content may be provided to a user via aprocessor in a set top box. At step 410, an entity associated with apremises may be monitored by the set top box. At step 415, apredetermined change related to the entity may be detected. At step 420,a notification may be displayed on a display connected to the set topbox. At step 425, a user input may be received in response to thedisplayed notification.

FIG. 5 is a flow diagram illustrating one embodiment of a method 500 forreceiving a user input to control automation via a media set top box. Insome configurations, the method 500 may be implemented by the automationmodule 145 illustrated in FIG. 1 or 2. In some configurations, themethod 500 may be implemented in conjunction with the application 140and/or the user interface 135 illustrated in FIG. 1.

At block 505, an entity associated with a premises of a user may bemonitored. At block 510, upon detecting a first user input, a buildingautomation user interface may be displayed. The building automation userinterface may include information regarding at least one of the one ormore sensors. At block 515, upon detecting a second user input inrelation to the automation user interface, an aspect of at least one ofthe one or more sensors may be adjusted. In some embodiments, the firstand second user inputs may include a voice command input, a videogesture input (a predetermined pattern of movement made by the hand anddetected by a camera, for example), tactile gesture input (apredetermined pattern of movement made by the hand on a touch pad, forexample), a mobile computing device input, a remote control deviceinput, and the like.

FIG. 6 is a flow diagram illustrating one embodiment of a method 600 forautomatically adjusting, via a media set top box, an aspect of anautomation system based on a detected action of a user. In someconfigurations, the method 600 may be implemented by the automationmodule 145 illustrated in FIG. 1 or 2. In some configurations, themethod 600 may be implemented in conjunction with the application 140and/or the user interface 135 illustrated in FIG. 1.

At step 605, subscriber program content may be provided to a user. Atblock 610, an entity associated with a premises may be monitored. Atblock 615, an action of the user may be monitored. At block 620, upondetecting the monitored action of the user matches a predetermined useraction, an aspect of at least one of the one or more sensors may beadjusted based on a current state of the one or more sensors.

FIG. 7 depicts a block diagram of a controller 700 suitable forimplementing the present systems and methods. The controller 700 may bean example of the set top box device 105, mobile computing device 155,and/or automation controller 160 illustrated in FIG. 1. In oneconfiguration, controller 700 includes a bus 705 which interconnectsmajor subsystems of controller 700, such as a central processor 710, asystem memory 715 (typically RAM, but which may also include ROM, flashRAM, or the like), an input/output controller 720, an external audiodevice, such as a speaker system 725 via an audio output interface 730,an external device, such as a display screen 735 via display adapter740, an input device 745 (e.g., remote control device interfaced with aninput controller 750), multiple USB devices 765 (interfaced with a USBcontroller 770), and a storage interface 780. Also included are at leastone sensor 755 connected to bus 705 through a sensor controller 760 anda network interface 785 (coupled directly to bus 705).

Bus 705 allows data communication between central processor 710 andsystem memory 715, which may include read-only memory (ROM) or flashmemory (neither shown), and random access memory (RAM) (not shown), aspreviously noted. The RAM is generally the main memory into which theoperating system and application programs are loaded. The ROM or flashmemory can contain, among other code, the Basic Input-Output system(BIOS) which controls basic hardware operation such as the interactionwith peripheral components or devices. For example, the automationmodule 145-b to implement the present systems and methods may be storedwithin the system memory 715. Applications (e.g., application 140)resident with controller 700 are generally stored on and accessed via anon-transitory computer readable medium, such as a hard disk drive(e.g., fixed disk 775) or other storage medium. Additionally,applications can be in the form of electronic signals modulated inaccordance with the application and data communication technology whenaccessed via interface 785.

Storage interface 780, as with the other storage interfaces ofcontroller 700, can connect to a standard computer readable medium forstorage and/or retrieval of information, such as a fixed disk drive 775.Fixed disk drive 775 may be a part of controller 700 or may be separateand accessed through other interface systems. Network interface 785 mayprovide a direct connection to a remote server via a direct network linkto the Internet via a POP (point of presence). Network interface 785 mayprovide such connection using wireless techniques, including digitalcellular telephone connection, Cellular Digital Packet Data (CDPD)connection, digital satellite data connection, or the like. In someembodiments, one or more sensors (e.g., motion sensor, smoke sensor,glass break sensor, door sensor, window sensor, carbon monoxide sensor,and the like) connect to controller 700 wirelessly via network interface785.

Many other devices or subsystems (not shown) may be connected in asimilar manner (e.g., entertainment system, computing device, remotecameras, wireless key fob, wall mounted user interface device, cellradio module, battery, alarm siren, door lock, lighting system,thermostat, home appliance monitor, utility equipment monitor, and soon). Conversely, all of the devices shown in FIG. 7 need not be presentto practice the present systems and methods. The devices and subsystemscan be interconnected in different ways from that shown in FIG. 7. Theaspect of some operations of a system such as that shown in FIG. 7 arereadily known in the art and are not discussed in detail in thisapplication. Code to implement the present disclosure can be stored in anon-transitory computer-readable medium such as one or more of systemmemory 715 or fixed disk 775. The operating system provided oncontroller 700 may be i0S®, ANDROID®, MS-DOS®, MS-WINDOWS®, OS/2®,UNIX®, LINUX® or another known operating system.

Moreover, regarding the signals described herein, those skilled in theart will recognize that a signal can be directly transmitted from afirst block to a second block, or a signal can be modified (e.g.,amplified, attenuated, delayed, latched, buffered, inverted, filtered,or otherwise modified) between the blocks. Although the signals of theabove described embodiment are characterized as transmitted from oneblock to the next, other embodiments of the present systems and methodsmay include modified signals in place of such directly transmittedsignals as long as the informational and/or functional aspect of thesignal is transmitted between blocks. To some extent, a signal input ata second block can be conceptualized as a second signal derived from afirst signal output from a first block due to physical limitations ofthe circuitry involved (e.g., there will inevitably be some attenuationand delay). Therefore, as used herein, a second signal derived from afirst signal includes the first signal or any modifications to the firstsignal, whether due to circuit limitations or due to passage throughother circuit elements which do not change the informational and/orfinal functional aspect of the first signal.

While the foregoing disclosure sets forth various embodiments usingspecific block diagrams, flowcharts, and examples, each block diagramcomponent, flowchart step, operation, and/or component described and/orillustrated herein may be implemented, individually and/or collectively,using a wide range of hardware, software, or firmware (or anycombination thereof) configurations. In addition, any disclosure ofcomponents contained within other components should be consideredexemplary in nature since many other architectures can be implemented toachieve the same functionality.

The process parameters and sequence of steps described and/orillustrated herein are given by way of example only and can be varied asdesired. For example, while the steps illustrated and/or describedherein may be shown or discussed in a particular order, these steps donot necessarily need to be performed in the order illustrated ordiscussed. The various exemplary methods described and/or illustratedherein may also omit one or more of the steps described or illustratedherein or include additional steps in addition to those disclosed.

Furthermore, while various embodiments have been described and/orillustrated herein in the context of fully functional computing systems,one or more of these exemplary embodiments may be distributed as aprogram product in a variety of forms, regardless of the particular typeof computer-readable media used to actually carry out the distribution.The embodiments disclosed herein may also be implemented using softwaremodules that perform certain tasks. These software modules may includescript, batch, or other executable files that may be stored on acomputer-readable storage medium or in a computing system. In someembodiments, these software modules may configure a computing system toperform one or more of the exemplary embodiments disclosed herein.

The foregoing description, for purpose of explanation, has beendescribed with reference to specific embodiments. However, theillustrative discussions above are not intended to be exhaustive or tolimit the invention to the precise forms disclosed. Many modificationsand variations are possible in view of the above teachings. Theembodiments were chosen and described in order to best explain theprinciples of the present systems and methods and their practicalapplications, to thereby enable others skilled in the art to bestutilize the present systems and methods and various embodiments withvarious modifications as may be suited to the particular usecontemplated.

Unless otherwise noted, the terms “a” or “an,” as used in thespecification and claims, are to be construed as meaning “at least oneof.” In addition, for ease of use, the words “including” and “having,”as used in the specification and claims, are interchangeable with andhave the same meaning as the word “comprising.” In addition, the term“based on” as used in the specification and the claims is to beconstrued as meaning “based at least upon.”

What is claimed is:
 1. A computer-implemented method for integration ofa set top box and an automation system, the method comprising:providing, via a processor in the set top box, subscriber programcontent; monitoring, via the processor, an aspect of a premises usingone or more sensors; and providing, via the processor, a monitor channelto display the monitored aspect of the premises, the monitor channelbeing displayed in a channel guide among channels of the subscriberprogram content.
 2. The method of claim 1, further comprising: trackinga plurality of entities associated with the premises; and providing atracking channel among the channels of the subscriber program content,the tracking channel to display a map of the tracked plurality ofentities.
 3. The method of claim 1, further comprising: modifying anative application programming interface (API) of the set top box inorder to provide the monitor channel in the channel guide among thechannels of the subscriber program content; and upon receiving a usercommand, scheduling the set top box to record the monitor channel for aspecified duration on a specified date.
 4. The method of claim 1,further comprising: detecting a predetermined change related to the oneor more sensors; displaying a notification on a display connected to theset top box based on the detected predetermined change; and receiving auser input in response to the displayed notification.
 5. The method ofclaim 4, further comprising: displaying the notification in relation toa presently viewed channel of the subscriber program content.
 6. Themethod of claim 4, further comprising: pausing a channel from thesubscriber program content; and displaying the notification on at leasta portion of the paused channel.
 7. The method of claim 4, furthercomprising: upon detecting a first user input, displaying an automationuser interface, the automation user interface including informationregarding the one or more sensors; and upon detecting a second userinput in relation to the automation user interface, adjusting, via theprocessor, an aspect of at least one of the one or more sensors.
 8. Themethod of claim 7, wherein the first and second user inputs comprise atleast one of a voice command input, a video gesture input, tactilegesture input, a mobile computing device input, and a remote controldevice input.
 9. The method of claim 1, further comprising: monitoringan action of a user; and upon detecting the monitored action of the usermatches a predetermined user action, adjusting an aspect of at least oneof the one or more sensors based on a current state of the one or moresensors.
 10. The method of claim 9, further comprising: detecting theaction of the user via a camera connected to the set top box.
 11. Themethod of claim 9, further comprising: identifying a pattern associatedwith the monitored action of the user; detecting an initiation of theidentified pattern associated with the monitored action of the user; andupon detecting the initiation of the identified pattern, adjusting anaspect of at least one of the one or more sensors.
 12. A systemconfigured for integration of a set top box and an automation system,comprising: a processor; one or more speakers; memory in electroniccommunication with the processor; instructions stored in the memory, theinstructions being executable by the processor to: provide subscriberprogram content; monitor an aspect of a premises using one or moresensors; and provide a monitor channel to display the monitored aspectof the premises, the monitor channel being displayed in a channel guideamong channels of the subscriber program content.
 13. The homeautomation system of claim 12, wherein the instructions are executableby the processor to: track a plurality of entities associated with thepremises; and provide a tracking channel among the channels of thesubscriber program content, the tracking channel to display a map of thetracked plurality of entities.
 14. The home automation system of claim12, wherein the instructions are executable by the processor to: modifya native application programming interface (API) of the set top box inorder to provide the monitor channel in the channel guide among thechannels of the subscriber program content; and upon receiving a usercommand, schedule the set top box to record the monitor channel for aspecified duration on a specified date.
 15. The home automation systemof claim 12, wherein the instructions are executable by the processorto: detecting a predetermined change related to the one or more sensors;display a notification on a display connected to the set top box basedon the detected predetermined change; and receive a user input inresponse to the displayed notification.
 16. The home automation systemof claim 15, wherein the instructions are executable by the processorto: display the notification in relation to a presently viewed channelof the subscriber program content.
 17. The home automation system ofclaim 15, wherein the instructions are executable by the processor to:pause a channel from the subscriber program content; and display thenotification on at least a portion of the paused channel.
 18. The homeautomation system of claim 15, wherein the instructions are executableby the processor to: upon detecting a first user input, display anautomation user interface, the automation user interface includinginformation regarding the one or more sensors; and upon detecting asecond user input in relation to the automation user interface, adjustan aspect of at least one of the one or more sensors.
 19. Acomputer-program product for integrating, via a processor, a set top boxand automation system, the computer-program product comprising anon-transitory computer-readable medium storing instructions thereon,the instructions being executable by the processor to: providesubscriber program content; monitor an aspect of a premises using one ormore sensors; and provide a monitor channel to display the monitoredaspect of the premises, the monitor channel being displayed in a channelguide among channels of the subscriber program content.
 20. Thecomputer-program product of claim 19, wherein the instructions areexecutable by the processor to: track a plurality of entities associatedwith the premises; and provide a tracking channel among the channels ofthe subscriber program content, the tracking channel to display a map ofthe tracked plurality of entities.